﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Marmat.Foundation;
using Marmat.FrameWork;

namespace Marmat.Template.WinForm
{
    /// <summary>
    /// 提供单据预览界面的支持
    /// </summary>
    /// <typeparam name="Entity">实体对象</typeparam>
    /// <typeparam name="DataSource">实体对象集</typeparam>
    public interface IDocumentViewForm<Entity, DataSource> : IProvider
    {
        /// <summary>
        /// 加载
        /// </summary>
        /// <param name="data"></param>
        void Load(DataSource data);

        /// <summary>
        /// 用户控制器
        /// </summary>
        IDocumentViewFormController<Entity, DataSource> Controller { get; set; }
    }

    /// <summary>
    /// 提供单据预览界面的支持
    /// </summary>
    /// <typeparam name="Entity">实体对象</typeparam>
    public interface IDocumentViewForm<Entity> : IDocumentViewForm<Entity, Entity[]>
    {
    }

    /// <summary>
    /// 提供单据预览界面的支持
    /// </summary>
    public interface IDocumentViewForm : IDocumentViewForm<System.Data.DataRow, System.Data.DataTable>
    {

    }
}
